Web Services are increasingly becoming a popular example for distributed computing. Having emerged as useful business integration tools at an enterprise level, they provide a flexible and dynamic environment for execution of many business critical applications. Since many enterprises are moving towards service oriented architecture (SOA), web services provide a simple yet efficient method of sharing and managing data. However, a service provider needs to address a number of issues like reliability, Quality of Service (QoS) etc, when externalizing the functionality of a web service.
In a web service management system, communication between a service provider and a consumer can be managed in several ways. One way is to use an agent-based approach to implement service management capabilities. The other is to use an intermediary based approach. In the intermediary approach, an intermediary acts as a mediator between a consumer and web services. A web service management system may consist of a group of service intermediaries that manage a set of services. The intermediary receives a service request from the consumer and passes it to a web service. Since the request is routed through a service intermediary, the selection of the service intermediary is a crucial step and must be able to cater to the runtime performance requirements of the consumer.